主题
授权管理模块总览 - Overview
本分类做什么
对接 欧拉授权平台:在脚本或宿主程序中完成授权登录、激活、试用申请、解绑、公告读取与更新状态查询。
当前包含 7 个接口:
- 登录 - Login
- 激活 - Activate
- 申请试用 - Trial
- 解绑 - UnBind
- 获取未读公告 - GetUnreadAnnouncements
- 按类型获取公告 - GetAnnouncementsByType
- 获取软件更新状态 - GetSoftUpdateStatus
一、核心接口职责对照
| 接口 | 典型目的 |
|---|---|
| 登录 - Login | 建立授权会话并获取当前授权状态。 |
| 激活 - Activate | 使用激活码进行授权激活。 |
| 申请试用 - Trial | 无激活码时向平台申请试用授权。 |
| 解绑 - UnBind | 解绑当前设备授权,返回激活码。 |
| 获取未读公告 - GetUnreadAnnouncements | 获取客户端未读公告列表。 |
| 按类型获取公告 - GetAnnouncementsByType | 按公告类型查询公告。 |
| 获取软件更新状态 - GetSoftUpdateStatus | 查询是否有新版本及更新包信息。 |
二、推荐使用流程
集成时建议 先尝试登录,未授权再引导用户购买/激活,激活成功后再登录一次建立会话。
下面给出 流程表 + 矢量图;文档站点(VuePress)默认不渲染 Mermaid,请以下方 SVG 为准。
流程一览(表格)
| 顺序 | 环节 | 分支 |
|---|---|---|
| 1 | 调用 Login | — |
| 2 | 判断 Status == 1 | 是 → 进入业务;否 → 下一步 |
| 3 | 提示用户购买激活码或申请试用 | — |
| 4 | Activate(有码)或 Trial(试用) | — |
| 5 | 判断 Status == 1 | 是 → 再次 Login;否 → 展示 Message |
| 6 | 再次 Login | 成功 → 业务;失败 → 展示 Message |
| 7 | 可选:未读公告、软件更新状态等 | 登录成功后 |
矢量流程图(SVG)
步骤说明
| 步骤 | 接口 | 说明 |
|---|---|---|
| 1 | 登录 - Login | 程序启动后 首先调用。成功时 Status 为 1,并返回到期时间、授权类型等;登录成功会自动注册插件,无需再调 Reg。 |
| 2 | 用户提示 | 若 Login 失败(返回 0,或 JSON 中 Status 不为 1),向用户说明 需要购买授权或输入激活码;可展示 Message 中的平台提示。 |
| 3 | 激活 - Activate 或 申请试用 - Trial | 用户输入激活码后调用 Activate;若无激活码且软件支持试用,可调用 Trial(无需激活码)。二者返回结构相同,以 Status = 1 表示授权写入成功。 |
| 4 | 再次 Login | 激活/试用成功后 必须再次调用 Login,才能建立授权会话并(按需)注册插件功能。 |
| 5 | 辅助接口(可选) | 登录成功后,可按需调用 获取未读公告、获取软件更新状态 等。 |
判断成功与失败
- Login:接口返回非
0的 JSON 指针,且解析后Status == 1表示登录成功;Status == 0表示当前账号在该软件下 尚无有效授权,应走激活/试用流程。 - Activate / Trial:
Status == 1表示平台侧授权已生效,随后再 Login;Status == 0时查看Message(如激活码无效、已使用、试用次数用尽等)。 - 所有返回 JSON 的字符串指针需用 FreeStringPtr 释放。
典型场景
| 场景 | 建议流程 |
|---|---|
| 已购买激活码的新用户 | Login 失败 → 提示输入激活码 → Activate → Login |
| 支持试用的新用户 | Login 失败 → Trial → Login |
| 已有授权的老用户 | 直接 Login 成功 → 进入业务 |
| 换机 / 迁移 | 解绑 - UnBind 取回激活码后,在新设备上 Activate → Login |
说明:若业务上确定用户从未授权,也可先
Trial/Activate再Login;但 以先 Login、失败再激活、成功后再 Login 为主流程,可避免已授权用户重复激活,并统一错误处理逻辑。
三、与其它模块的关系
| 模块 | 关系 |
|---|---|
| 设置 - GetMachineCode | 激活常依赖 机器码 或硬件指纹,需与平台侧配置一致。 |
四、使用注意
- 参数、返回码、是否需 重复登录/刷新令牌 以 各接口详情页及当前插件版本 为准。
- 正式环境请 关闭调试输出,避免泄露账号、卡密与返回 JSON。
